From 2db05f29eb1ae57753349d0ee7aa9844ffc3eff5 Mon Sep 17 00:00:00 2001 From: "kaf24@firebug.cl.cam.ac.uk" Date: Fri, 3 Jun 2005 14:10:37 +0000 Subject: [PATCH] bitkeeper revision 1.1664 (42a064ddVMYCAab_WQM9CcyTOyYMgQ) Simplify implementation of map_domain_mem. Signed-off-by: Keir Fraser --- xen/arch/x86/x86_32/domain_page.c | 17 +---------------- 1 file changed, 1 insertion(+), 16 deletions(-) diff --git a/xen/arch/x86/x86_32/domain_page.c b/xen/arch/x86/x86_32/domain_page.c index 40d0f8f964..c1a0172462 100644 --- a/xen/arch/x86/x86_32/domain_page.c +++ b/xen/arch/x86/x86_32/domain_page.c @@ -24,20 +24,6 @@ l1_pgentry_t *mapcache; static unsigned int map_idx, epoch, shadow_epoch[NR_CPUS]; static spinlock_t map_lock = SPIN_LOCK_UNLOCKED; -/* Use a spare PTE bit to mark entries ready for recycling. */ -#define READY_FOR_TLB_FLUSH (1<<10) - -static void flush_all_ready_maps(void) -{ - l1_pgentry_t *cache = mapcache; - unsigned int i; - - for ( i = 0; i < MAPCACHE_ENTRIES; i++ ) - if ( (l1e_get_flags(cache[i]) & READY_FOR_TLB_FLUSH) ) - cache[i] = l1e_empty(); -} - - void *map_domain_mem(unsigned long pa) { unsigned long va; @@ -65,7 +51,6 @@ void *map_domain_mem(unsigned long pa) if ( unlikely(idx == 0) ) { ASSERT(flush_count++ == 0); - flush_all_ready_maps(); perfc_incrc(domain_page_tlb_flush); local_flush_tlb(); shadow_epoch[cpu] = ++epoch; @@ -87,5 +72,5 @@ void unmap_domain_mem(void *va) ASSERT((void *)MAPCACHE_VIRT_START <= va); ASSERT(va < (void *)MAPCACHE_VIRT_END); idx = ((unsigned long)va - MAPCACHE_VIRT_START) >> PAGE_SHIFT; - l1e_add_flags(mapcache[idx], READY_FOR_TLB_FLUSH); + mapcache[idx] = l1e_empty(); } -- 2.30.2